<template>
      <!--表格栏-->
      <el-table   :data="data"    class='gk-main-table'    :highlight-current-row="highlightCurrentRow" 
          :cell-style="cellStyle" 
           @selection-change="selectionChange"   @current-change="handleCurrentChange"   
           v-loading="loading" :show-summary="summary" 
           :summary-method="getSummaries"   :element-loading-text="$t('action.loading')" :border="border"  
          :stripe="stripe"  :show-overflow-tooltip="showOverflowTooltip"  
           :height="height"   size="mini"    :align="align"   :row-key="rowKey"  
           @expand-change="fnnodepand"     :expand-row-keys="defaultkeyarr"  style="width:100%;">
         <slot></slot>
      </el-table>
     
</template>

<script>

  export default {
    name: 'MyTable',
   
    props: {
      
      data: Array, // 表格分页数据
      rowKey:{  // 文本对齐方式
        type: String,
        default: 'id'
      },
      align: {  // 文本对齐方式
        type: String,
        default: 'left'
      },
     
      myRef: { type: String,  default:'mytable'},
     
     
      height: {  // 表格最大高度
        type: Number,
        default: 400
      },
     
      summary: {  // 表格最大高度
        type: Boolean,
        default: false
      },
      
    
      border: {  // 是否显示边框
        type: Boolean,
        default: false
      },
      stripe: {  // 是否显示斑马线
        type: Boolean,
        default: true
      },
      highlightCurrentRow: {  // // 是否高亮当前行
        type: Boolean,
        default: true
      },
      showOverflowTooltip: {  // 是否单行显示
        type: Boolean,
        default: true
      },
        cellStyle: Function,
         getSummaries:Function
    },
    data() {
      return {
        defaultkeyarr:[],
        loading: false,  // 加载标识
        selections: []  // 列表选中列
      }
    },
    methods: {
      fnnodepand: function (node,extend){
   
       if(extend){
            for(var i=0;i<  this.defaultkeyarr.length;i++){
                  if(this.defaultkeyarr[i]==node.id){
                      return;
                  }
            }
            this.defaultkeyarr.push(node.id)

       }else{

         for(var i=0;i<  this.defaultkeyarr.length;i++){
              if(this.defaultkeyarr[i]==node.id){ 
                this.defaultkeyarr.splice(i,1) 
              }

         }
      

       }
         
      },
      // 选择切换
      selectionChange: function (selections,action) {
   
        this.selections = selections
        this.$emit('selection-change', selections )
      },
      // 选择切换
      handleCurrentChange: function (val) {
        this.$emit('handleCurrentChange', { val: val })
      },
    },
    mounted() {
     
    },
   
  }
</script>

<style scoped>
.el-table {
    overflow: visible !important;
}
</style>